package com.itheima.abstract3;

//模板方法设计模式
public abstract class Student {

    //建议使用final修饰模板方法
    //模板方法是给子类直接使用的，子类不能修改。
    //一旦子类重写了模板方法，模板方法就失效了。
    public final void write() {

        System.out.println("我的父亲是一个XXX，他XXX，他XXX。");

        //模板方法知道子类一定要写这段，但每个子类写的内容不同，此时父类可以定义一个抽象方法，
        //具体的内容由子类实现。
        writeMain();

        System.out.println("我的父亲XXX，XXX，XXX！");
    }

    public abstract void writeMain();
}
